home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / Library / +ORC / Orc pac 3 / FILEZ.ZIP / MONKEY.ZIP / KILLMONK.ZIP / MONKEY.NOT < prev   
Encoding:
Text File  |  1993-11-01  |  6.1 KB  |  132 lines

  1.  
  2. Virus Name:  MONKEY.A, MONKEY.B  (Empire variants)
  3. V Status:    Common in Edmonton, Canada; and several places globally.
  4. Discovery:   February, 1992
  5. Symptoms:    Memory reduction, hard drive partitions not accessible on 
  6.              floppy bootup.
  7. Origin:      Alberta, Canada 
  8. Eff. Length: 512 bytes
  9. Type Code:   BPRtS (Boot and Partition table infector - Resident TOM - 
  10.              Stealth)
  11. Detection:   CHKDSK, F-PROT, CHKSEC from Disk Secure 1.15, KILLMONK
  12. Removal:     Cold boot from clean, write-protected floppy, replace MBR (hard 
  13.              disk) or Boot Sector (floppy).
  14.  
  15. General Comments:
  16. The Monkey viruses are Main Boot Record / Boot Sector infectors,
  17. derived from the Empire D virus.  Two variants of the Monkey virus
  18. have been identified: their most obvious difference is in the initial
  19. bytes at offset 0:
  20. Monkey.1:    E9 CD 01      (JMP 02D0)
  21. Monkey.2:    EB 1E 90      (JMP 0020 ; NOP)
  22.  
  23. Both variants keep the original sector's data at offset 03h - 1fh. 
  24. In boot sectors, this region contains data required to identify the
  25. diskette format.  This solves the problem noticed with earlier
  26. variants of Empire, whereby infected 720k diskettes were sometimes
  27. unreadable.
  28.  
  29. The Monkey viruses take 1k from the top of memory.  When active, total
  30. memory will be reduced by 1024 bytes.  The virus installs itself at
  31. offset 200h in the 1k memory block.
  32.  
  33. The Monkey viruses use stealth to protect both the MBR and diskette
  34. boot sectors.  When active in memory, Int 13h calls cannot access the
  35. infected sector of either hard disks or floppies.
  36.  
  37. The Monkey viruses are not polimorphic.  They do not encode any of the
  38. virus, as was done by some of the earlier Empire variants.  But before
  39. saving the clean MBR or boot sector to a hiding place, the Monkey
  40. viruses do encode that sector, using an "XOR 2Eh".  This creates a
  41. problem for disinfecting programs that recover the initial boot
  42. sector or MBR by copying it from the hiding place.
  43.  
  44. Typical of MBR infectors, Monkey infects the MBR of the first
  45. hard disk when the computer is "booted" from an infected diskette.
  46. The encoded MBR is put at side 0, cylinder 0, sector 3.  On a  
  47. computer with two hard disks, the second hard disk is infected
  48. later, any time it is accessed, the same way diskettes get infected.
  49.  
  50. When a floppy diskette is infected, the original boot sector is placed
  51. in the bottom sector of the root directory.  This means directory
  52. entries will be lost only if the root directory is nearly full -- more
  53. than 96 entries on double density diskettes, or more than 208 entries
  54. on high density diskettes.  The virus is designed to identify only the
  55. four most common diskette formats.  If the diskette is not of a
  56. recognized format, the boot sector is put on side 1, sector 3.  I have
  57. no idea what would happen to a 2.88Mb diskette, but I suspect the
  58. virus would damage the File Allocation Table, causing loss of data.
  59.  
  60. The Monkey viruses do not put any messages to the screen at any time,
  61. but the virus code does contain, encrypted, the string "Monkey",
  62. followed by bytes 1992h.  It may be significant that the chinese Year
  63. of the Monkey began in February 1992.
  64.  
  65. The most remarkable characteristic of the Monkey viruses is that they
  66. were designed as an attack on early versions of Padgett Peterson's "Disk 
  67. Secure" product.  When a computer is booted from an infected diskette,
  68. the virus first checks whether DiskSecure is on the hard disk.  If it
  69. is, the virus puts itself in sector 2, rather than sector 1, and slightly
  70. modifies DiskSecure, so that DiskSecure will load the virus after
  71. DiskSecure has checked the system and loaded itself.  The Monkey
  72. viruses install themselves above DiskSecure, in memory, at offset
  73. 200h.
  74.  
  75. The Monkey viruses do not save the partition table data in place, so
  76. if an infected system is booted from a clean boot disk, DOS claims to
  77. be unable to access the hard drive partitions.  A "DIR C:" command will
  78. return "Invalid drive specification".
  79.  
  80. Detection:  
  81. The simplest detection still involves recognizing a 1k decrease in
  82. memory.  CHKDSK and MEM will return 1k less "total conventional
  83. memory" than normal.
  84.  
  85. The latest versions of good virus scanners should identify the Monkey 
  86. viruses on hard disks and diskettes, or in memory.  Some scanners will
  87. not scan an infected hard drive's MBR for the virus because DOS 
  88. can't see the partitions on the drive. 
  89.  
  90. DiskSecure II detects and removes Monkey.
  91.  
  92. A special program to find and remove the Monkey viruses, called
  93. KillMonk, has been written at the University of Alberta and is
  94. available via ftp from several sites.  The latest version is 3.0,
  95. packaged as KILLMNK3.ZIP.
  96.  
  97. Removal:  
  98. Some scanners may remove Monkey from a system's hard disk.  As far
  99. as I know, only KillMonk 3.0 will remove the virus from a
  100. second hard disk, if present.
  101.  
  102. The undocumented /MBR option of FDISK does remove the Monkey virus
  103. from the MBR, provided the computer was booted from a clean floppy,
  104. but it does not restore the correct partition table values.  The
  105. problem is that the partition table is not in place in sector one;
  106. the table is encoded, in sector 3.
  107.  
  108. If you have previously saved a copy of the clean MBR, then
  109. it can be restored.  (Many anti-virus products have an
  110. automated way of doing this.)  If you don't have a copy of the
  111. original MBR, and don't know what values your partition table 
  112. should have, then KillMonk 3.0 should do the cleanup for you.
  113. Earlier versions of KillMonk will fail.
  114.  
  115. To restore diskettes: Padgett Peterson's FIXFBR works very well,
  116. though it doesn't recognize that the disk is infected.  KillMonk,
  117. and the latest versions of good scanners should work as well.
  118.  
  119. Scan String:
  120. The following hexidecimal string is in both variants of Monkey.
  121. It is from the code the virus uses to recognize itself.
  122.    26 81 bf fa 01 19 92 c3 26 81 bf 19 01 50 61
  123.  
  124. Tim
  125.  
  126.  ---------------------------------------------------------------
  127.   Tim Martin                      *
  128.   Spatial Information Systems     *   These opinions are my own:
  129.   University of Alberta           *      My employer has none!
  130.   martin@ulysses.sis.ualberta.ca  *
  131.  ---------------------------------------------------------------
  132.